第16章 インタビュー
#エクストリームプログラミング
本性ではXPを導入した企業のインタビュー内容のメモを残しておく。
Sabre Airline Solutions社のブラッド・ジェンセンさんの記録
XPを使い始めた理由は?
13あったプロダクトチームを一つの組織にまとめて、アーキテクチャやルックアンドフィールを統一かするため
組織に人数は?
全体で300人。内訳は開発者が240人、マネジメント・事務職が25人、テストと構成管理が35人
どのようのXPを導入したか
13のプロダクトチームそれぞれにXPのトレーニング(Object Mentor)し、チームにコーチをつけた
今やるなら1つのチームから始めてみて、定着してから別のチームでXPを開始するのがいいかも
XPのすべてを使っているか
状況によって使い分けをしている。
新規開発にはXPは最適。
レガシーコードの場合はウォーターフォール型のXPを適用している
要件定義や設計の作業を事前に行い、テストフェーズを経てデプロイする
レガシープロジェクトは設計をシンプルにできない。テストが十分ではなく、バグも存在する。
そのため、プロジェクトの開始時と終了時にウォーターフォールのフェーズが必要にある
XPの利点はなにか
純粋なXPのプロジェクトは、欠陥がほぼない。二年間運用して欠陥がないプロジェクトもある
レガシーのXPプロジェクトでも、コード1000行あたりに1 ~ 2個程度
生産性が40%も向上した
XPの導入は簡単ではなかった?
チームメンバーの浸透するのが大変だった。
3分の1が懐疑的、3分の1がすぐに実施、3分の1が様子みだった
最終的に敵には80%~90%が実施してくれた
一部絶対に取り入れてくれない人もいたら、解雇する勇気を持つべき
本物の顧客について教えて
多くの場合は顧客次第
本物の顧客は素晴らしい人もいれば、そうでない人もいる。
ストーリーを書いてくれる人もいれば、受けいれテストの条件も書いてくれる人がいた。しかし、そうでない顧客もいた
その場合は、ドメイン知識のある開発者が書くこともあった
見積もりを抑えるために、最初要件を隠しておいて、後出しの要求をする顧客もいた
XPの導入を検討している経営幹部にアドバイス
ぜひ、XPを使って欲しい
フィーチャー単位で計画すること。フィーチャーは顧客の関心があるものを選ぶこと
四半期ごとにリリースを計画すること
イテレーションは可能限り短くし、固定にすること
顧客とチームと同席させること
ウォーターフォール型にXPを取り入れても効果は得られる